#! /usr/bin/env python
# Forearm camera configuration

PACKAGE='MST_Edge_Detection'
import roslib; roslib.load_manifest(PACKAGE)

from math import pi

from driver_base.msg import SensorLevels
from dynamic_reconfigure.parameter_generator import *

gen = ParameterGenerator()
#       Name                    Type      Reconfiguration level             Description                                        Default    Min   Max
gen.add("sobel",            bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take sobel",                                True)
gen.add("second_order",         bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take the second order sobel",           False)
gen.add("third_order",          bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take the third order sobel",            False)
gen.add("sobel_per_add",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    300)
gen.add("laplace",            bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take the laplacian instead of sobel",   False)
gen.add("laplace_per_add",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    100)
gen.add("canny",                 bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take canny",                          False)
gen.add("canny_thresh_1",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    10000)
gen.add("canny_thresh_2",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    10000)
gen.add("canny_val",           double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    100)
gen.add("canny_second_order",         bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take the second order sobel",           False)
gen.add("canny_third_order",          bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to take the third order sobel",            False)
gen.add("canny_per_add",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    100)
gen.add("square_root",          bool_t,   SensorLevels.RECONFIGURE_STOP,    "Option to square root after adding chanels",      False)
gen.add("scaler_percent",       double_t, SensorLevels.RECONFIGURE_STOP,    "The scaler aplied to the output image.",          100,       0,    100)

exit(gen.generate(PACKAGE, "dynamic_reconfigure_node", "Edge_Detection_Params"))

